#define _CRT_SECURE_NO_WARNINGS 
#include"work.h"
//void test1()
//{
//	SL sl;
//	SLInit(&sl);
//	SLPushFront(&sl, 4);
//	SLPushFront(&sl, 3);
//	SLPushFront(&sl, 2);
//	SLPushFront(&sl, 1);
//	SLPushBack(&sl, 5);
//	SLPushBack(&sl, 6);
//	SLPushBack(&sl, 7);
//	SLPushBack(&sl, 8);
//	SLPrint(&sl);
//	SLPopBack(&sl);
//	SLPopBack(&sl);
//	SLPrint(&sl);
//	SLPopFront(&sl);
//	SLPopFront(&sl);
//	SLPrint(&sl);
//	SLDestroy(&sl);
//}
//void test2()
//{
//	SL* plist = SLInit();
//	SLPushBack(plist, 1);
//	SLPushBack(plist, 2);
//	SLPushBack(plist, 3);
//	SLPushBack(plist, 4);
//	SLPushFront(plist, 8);
//	SLPushFront(plist, 7);
//	SLPushFront(plist, 6);
//	SLPushFront(plist, 5);
//	SLPrint(plist);
//}
//void test3()
//{
//	ST st;
//	STInit(&st);
//	STPush(&st, 1);
//	STPush(&st, 2);
//	STPush(&st, 3);
//	STPush(&st, 4);
//	while (!STEmpty(&st))
//	{
//		printf("%d ", STTop(&st));
//		STPop(&st);
//	}
//}
//void test4()
//{
//	Queue queue;
//	QueueInit(&queue);
//	QueuePush(&queue, 1);
//	QueuePush(&queue, 2);
//	QueuePush(&queue, 3);
//	QueuePush(&queue, 4);
//	while (!QueueEmpty(&queue))
//	{
//		printf("%d ", QueueFront(&queue));
//		QueuePop(&queue);
//	}
//	QueueDestroy(&queue);
//}
//void test5()
//{
//	int arr[10] = { 1,5,6,7,2,3,4,9,8,0};
//	int size = sizeof(arr) / sizeof(int);
//	//HeapSort(arr, size);
//	//Print(arr,size);
//	TopK(arr, 5, size);
//	HeapSort(arr, 5);
//    Print(arr,5);
//}
//void test6()
//{
//	BTNode* root = CreatBinaryTree();
//	PreOrder(root);
//	printf("\n");
//	InOrder(root);
//	printf("\n");
//	PostOrder(root);
//	printf("\n");
//	printf("%d\n", BinaryTreeSize(root));
//	printf("%d\n", BinaryTreeLeafSize(root));
//	printf("%d\n", BinaryTreeLevelKSize(root,3));
//	BTNode* find = BinaryTreeFind(root,4);
//	printf("%d\n", find->val);
//	BinaryTreeLevelOrder(root);
//	printf("\n");
//	printf("%d\n", BinaryTreeComplete(root));
//	BinaryTreeDestory(&root);
//}
void test7()
{   
	int arr[10] = { 5,6,8,3,2,1,4,9,7,0};
	//int arr[3] = { 3,2,1 };
	int size = sizeof(arr) / sizeof(int);
	//InsertSort(arr, size);
	//ShellSort2(arr, size);
	//QuickSort(arr, 0, size - 1);
	QuickSortNonR(arr, 0, size - 1);
	ArrPrint(arr, size);
}
int main()
{  
	//test1();
	//test2();
	//test3();
	//test4();
	//test5();
	//test6();
	test7();
	return 0;
}